Dual map system for navigation and wireless communication

ABSTRACT

A system produces of an empirical map of wireless communication coverage through a process of combining information from individual clients to produce a map which is then shared by all of the clients. The wireless coverage map aids in maintaining a reliable communications link. The empirical map is generated by combining information from a group of mobile wireless users. The group may consist of a fleet of trucks, taxicabs, government service vehicles, or the customers of a wireless service provider. The mobile vehicles must be equipped with a GPS device or be located by other means such as triangulation. While vehicles are moving, the quality of wireless communication, e.g., signal strength or communication continuity, is recorded for each vehicle as a function of positions. The data from all of the vehicles is combined to produce the empirical map. The empirical map may be maintained at a central site and subsets of the map replicated for individual vehicles. The map may then be used to direct mobile users to sites of superior communications reliability, warn mobile users when they are out of the service area or are about to leave the service area, or to regulate data communications automatically to stop and restart communications as a mobile vehicle passes through a gap in coverage.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention generally relates to wirelesscommunications and, more particularly, to the creation of an empiricalmap of wireless coverage which quantifies the quality of wirelesscoverage over an area and resolves variations of coverage quality overthe area to within the geographic accuracy of available locationsystems, such as the Global Positioning Satellite (GPS) system.

[0003] 2. Background Description

[0004] Coverage areas for communications are defined only approximatelyby wireless carriers. Carriers do provide geographic maps of predictedcoverage areas; however, existing maps do not define the precise degreeof the coverage area or the locations of gaps within the advertisedarea. The imprecision of the existing maps is on the order of miles.Gaps in coverage may be caused by natural landscape features such as lowlying valleys or by man made obstructions such as tunnels or tallbuildings. Wireless communications providers may provide a disclaimerwith their coverage map as an implied acknowledgment of such gaps.

[0005] In order to maintain communications for mobile applications, itis necessary that the mobile communications device be located in an areaof reliable communications. For example, automobiles when stationarymust be located in the reliable area. Today, the user must find such anarea by chance or make a choice based upon personal experience. Tomaintain communications in a vehicle in motion is even more difficult. Amoving automobile or truck on a highway will pass in and out of areaswhere communications are reliable as it moves. Currently, there is noway to predict where the transitions from good to bad communicationsoccur.

[0006] The Global Positioning System (GPS) uses a set of twenty-fourorbiting satellites to allow ground-based users to determine theirlocations. Systems for automotive use have dropped in price to the pointwhere they can be purchased for a few hundred to a few thousand dollars.These systems are either built in to the vehicle (e.g., the CadillacOn-Star system) or are portable in a lap top computer (e.g., the DelormeGPS Tripmate system). Such systems, however, are essentially passive,one way systems; that is, they provide the driver with positioninformation based on GPS data.

SUMMARY OF THE INVENTION

[0007] It is therefore an object of the present invention to provide anempirical map of wireless coverage which quantifies the quality ofwireless coverage over an area.

[0008] It is another object of the invention to provide such anempirical map which resolves variations of coverage quality over thearea to within the geographic accuracy of available Global PositioningSatellite (GPS) system. Such accuracy is 100 meters or better today forlow cost civilian equipment and will be improved to 10 meters or betterin the next decade by the launching of a new satellite system.

[0009] According to the invention, there is provided a system for theproduction of an empirical map of wireless communication coveragethrough a process of combining information from individual clients toproduce the map which is then shared by all of the clients. Whitespaces, areas not measured, can be discovered and then explored andadded to the map database in a self-teaching process.

[0010] The invention provides a method to improve wirelesscommunications by using a digital representation of the coverage map toaid in maintaining a reliable communications link. The invention alsoincludes the adaptation of existing wireless coverage maps of wirelesscommunication providers into the digital domain. The existing maps maythen be used as the initial map upon which the empirical map itgenerated to improve wireless communications for mobile clients.

[0011] The empirical map may be generated by combining information froma group of mobile wireless users. The group may consist of a fleet oftrucks, taxicabs, government service vehicles, or the customers of awireless service provider. The mobile vehicles must be equipped with aGPS device or be located by other means such as triangulation. Whilevehicles are moving, the quality of wireless communication, e.g., signalstrength or communication continuity are recorded for each vehicle as afunction of positions. The data from all of the vehicles is combined toproduce the empirical map. The empirical map may be maintained at acentral site and replicated for individual vehicles. The map may then beused to direct mobile users to sites of superior communicationsreliability, warn mobile users when they are out of the service area orare about to leave the service area, or to regulate data communicationsautomatically to stop and restart communications as a mobile vehiclepasses through a gap in coverage. For instance, the data to be sent froma car about to enter a tunnel is stored in a buffer until the car leavesthe tunnel.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The foregoing and other objects, aspects and advantages will bebetter understood from the following detailed description of a preferredembodiment of the invention with reference to the drawings, in which:

[0013]FIG. 1 is a block diagram showing the overall system according tothe invention;

[0014]FIG. 2 is a flow diagram showing the interaction between processesand devices in the system shown in FIG. 1;

[0015]FIG. 3 is a flow chart showing the routine of the navigationmanager executed on the system control unit;

[0016]FIG. 4 is a flow chart showing the routine of the coverage managerexecuted on the system control unit;

[0017]FIG. 5 is a flow chart showing the routine of the connectionmanager executed on the system control unit; and

[0018]FIG. 6 is a high level block diagram showing the interactionbetween a server and clients for updating maps.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

[0019] Referring now to the drawings, and more particularly to FIG. 1,there is shown the overall system diagram. The major components of thesystem include the system control unit 101, such as a general purposecomputer having a central processing unit (CPU) supported by read onlymemory (ROM) storing basic input/output system (BIOS) and random accessmemory (RAM) storing application program code. Such a general purposecomputer may be, for example, a lap top computer or an on board,built-in computer. The system unit 101 communicates with a user via aninput/output (I/O) system 110, which comprises an output device 111,such as a speaker and display, and an input device 112, such as amicrophone and a keyboard.

[0020] The system control unit 101 has connected to it and communicateswith a GPS receiver 113, a measurement device 114, a wirelesscommunication device 115, and the storage device 116. The GPS receiver113 provides location information to the system control unit whichdetermines from the GPS data the current location of the vehicle. Whilea GPS receiver is the preferred location determining device, it will beunderstood that other location systems based on triangulationalgorithms, such as long-distance radio navigation system (LORAN), mayalso be used.

[0021] The measurement device 114 measures the field strength ofwireless signals. These measurements are correlated with the locationinformation from the GPS receiver or other location determining deviceand used to update the local wireless coverage map. This updatingfunction is what makes the map an empirical map.

[0022] The wireless communication device 115 is required fortransmitting and receiving data from a central server for the purpose ofupdating the wireless coverage map, as will be described in more detailwith reference to FIG. 3. The wireless communication device 115 may be,for example, a digital cellular telephone which may be used for voicecommunications as well as data communications.

[0023] The storage device 116 may be a hard disk drive on which anavigation or street map and the wireless coverage map are stored. Thenavigation map and the wireless coverage map may be used to generate aroute map for the vehicle, and this route map may also be stored on thestorage device. The wireless coverage map is typically a digitizedversion of the wireless coverage map derived from the wireless serviceprovider. As will be described in more detail, this map is used toinitialize the system and, as the vehicle is in route, is updated basedon measurements made by the measurement device 114. Moreover, there maybe multiple wireless coverage maps stored on the storage device 116, onefor each wireless service provider which may be used. In addition, thestorage device 116 may also include a compact disk (CD) or digitalversatile disk (DVD) drive which stores a comprehensive navigation orstreet map of the coverage area in which the vehicle is located. The CDor DVD may also store the digitized versions of the multiple wirelesscoverage maps provided by the wireless service providers.

[0024] The system control unit 101 further comprises four softwareprocesses, the code for which may reside on the storage device 116 andthen read into the RAM of the system control unit. These softwareprocesses are a navigation manager 102, a coverage manager 103, aconnection manager 104, and a user interface manager 105, which aredescribed in more detail with reference to FIG. 2.

[0025]FIG. 2 shows the interaction between the components in FIG. 1. InFIG. 2, like reference numerals represent the same components in FIG. 1.The user 220 commands the system and gets system warning and eventnotification through the input/output system 110. The user interfacemanager 105 gets the user's command through the input/output system 110and interacts with the navigation manager 102, the coverage manager 103,and the connection manager 104 to service the user's commands, presentresults, and give notification about the system events of interest touser 220 through the input/output system 110. For example, the user 220may enter an origin and a destination and request a computed best route.Along that route, the user may have one or more checkpoints at which heor she desires to make contact with another party, perhaps someone at acentral station. These checkpoints, which may be a location or a timeperiod, are also entered by the user 220.

[0026] The navigation manager 102 has access to the navigation or streetmap and the coverage map stored in the storage device 116 for routeplanning or tracking and obtains the vehicle's location information fromthe GPS receiver 113 for vehicle location and navigation. When the user220 requests a computed best route, it is the navigation manager 102that makes this computation.

[0027] The coverage manager 103 has access to the measurement device 114for the current quality of wireless coverage. The coverage manager 103also has access to the storage device 116, which contains the streetmap, the coverage map, and route planning information, and interactswith the GPS receiver 113 for predicting the future wireless coveragequality according to the route plan stored in the storage device 116.Based on the prediction of the wireless coverage, the coverage manager103 notifies the user interface manager 105 the events of interest tothe user 220, e.g., soon to lose coverage and soon to regain coverage.The coverage manager 103 refines the coverage map by the new measurementfrom the measurement device 114 and the location information obtainedfrom the GPS receiver 113.

[0028] The connection manager 104 obtains the predictive coverageinformation (e.g., estimated time until losing coverage or regainingcoverage) from the coverage manager 103 and finds the best timing tomake a wireless connection through the wireless communication device 115to the person or destination with which the user 220 wants tocommunicate. The information about with whom the user wants tocommunicate is provided by the user interface manager 105 which receivesthis information from the I/O system 110 as input by the user 220. Thisinformation may be input by the user at anytime, either before departingas checkpoints or while in transit.

[0029]FIG. 3 is a flow chart showing the routine of the navigationmanager 102 executed on the system control unit 101. The process of thenavigation manager 102 starts with an initialization step 301 in whichthe default route plan stored in storage device 116 is loaded in memory.After this initialization step, the process enters a loop the first stepof which is a navigation task 302. This task is performed by interactingwith the GPS receiver 113, street map and route plan until thenavigation manager 102 receives a request from the user interfacemanager 105 to compute a new route, as determined in decision block 403.When such a request is received, the navigation manager 102 calculates anew route in step 304 based on the street/coverage maps in the storagedevice 116 as well as the user's input including the destination addressand user preference criteria such as shortest distance, shortest traveltime, and best wireless coverage. The resulting new route is stored inthe storage device 116 in step 305 before the process loops back to step402.

[0030]FIG. 4 is a flow chart showing the routine of the coverage manager103 executed on the system control unit 101. The process of the coveragemanager 103 starts with an initialization step 401 in which the defaultroute plan stored in storage device 116 is loaded in memory. After thisinitialization step, the process enters a loop the first step of whichis a measurement task 402. In this step, the coverage manager 103 getsmeasurements of signal strength from the measurement device 114 andupdates the coverage map stored in the storage device 116. The coveragemanager then, in step 403, predicts coverage status according to theroute plan, the coverage map, both stored in storage device 116, and thecurrent position obtained from the GPS receiver 113. The coveragemanager checks in decision step 404 to determine if there is a need tonotify the user interface manager 105. If so, the interface manager isinformed about coverage status in step 405. The possible notificationsinclude “soon to lose coverage”, “soon to regain coverage”, “coveragelost”, “coverage regained”, and the like. After informing the interfacemanager 105 about coverage status or if there is no to be informationfor the interface manager 105, the coverage manager checks in decisionstep 406 to determine if a query about the status of short term coveragehas been received from the connection manager 104. If so, the coveragemanager reports the status back to the connection manager 104 in step407. After doing so or if there is no query from the connection manager,the process loops back to step 402.

[0031]FIG. 5 is a flow chart showing the routine of the connectionmanager 104 executed on the system control unit 101. The process of theconnection manager 104 starts with a decision step 501 in which thereception of a “connect” command from the user interface manager 105 isdetected. When a “connect” command is detected, the connection managerqueries the coverage manager 103 about the short term coverage status instep 502. The coverage manager 104 receives a query result and thendetermines in decision step 503 whether the query result is “out ofcoverage soon”. If so, the connection manager queries the user interfacemanager 105 in step 504 if a connection is needed immediately. If theuser interface responds positively as determined in decision step 505 orif coverage manager determines in decision step 503 that the queryresult is not “out of coverage soon”, the connection manager commandsthe wireless communication device 115 to make a connection in step 506.On the other hand, if the user interface responds negatively asdetermined in decision step 505, the process loops back to step 501 toawait a new request and, at the same time, the user interface manager105 notifies the user and thereafter keeps track of coverage status.When coverage is regained, the user interface manager 105 will resendthe connection request to the connection manager 104 when the coverageis regained.

[0032] Once a connection in made, the connection manager enters amonitoring loop in which the commands for disconnection are detected indecision step 507 or a dropped connection is detected in decision step508. If a disconnect command is detected, the connection manager issuesa command in step 509 to the communication device to disconnect. Theprocess then loops back to decision step 501 to await a new connectcommand from the user interface manager 105. If a dropped connection isdetected, a connection error is reported to the user interface manager105, and the process then loops back to decision step 501 to await a newconnect command from the user interface manager 105.

[0033]FIG. 6 shows the interaction between three client systems and aserver system for updating a server wireless coverage map and clientwireless coverage maps. Each client system will be understood to be aseparate vehicle within a service area of the server, which is typicallya fixed base station. Each vehicle will have a system as shown inFIG. 1. As described above, the coverage manager 103 updates the localwireless coverage map in storage device 116 based on information fromthe measurement device 114 and the GPS receiver 113. As shown in FIG. 6,this local updating may be augmented by updating from a central wirelesscoverage map.

[0034] In FIG. 6, a server 600 contains a server wireless coverage map610, and the three client systems 601, 602 and 603 contain a clientwireless coverage maps 611, 612 and 613, respectively. In general, theserver map 300 is a superset of the client maps and a client map onlycovers the area of interest to the user. The server 600 receives mapupdates from clients 601, 602 and 603 in the form of pairs of locationand quality of wireless coverage. This is the same information that isused at the client to update the local wireless coverage map by thecoverage manager 103. By receiving this information from a plurality ofclients, the server can update the server wireless coverage map 610. Aclient system, e.g., 601, 602 or 603, can request an up-to-date subsetof the server map 610 and updates its local client wireless coverage mapaccordingly.

[0035] While the invention has been described in terms of a singlepreferred embodiment, those skilled in the art will recognize that theinvention can be practiced with modification within the spirit and scopeof the appended claims.

Having thus described our invention, what we claim as new and desire tosecure by Letters Patent is as follows:
 1. A dual map system in avehicle for navigation and wireless communication comprising: a locationdevice to identify a position of the vehicle; a wireless communicationdevice; a measurement device which determines the quality of wirelesscommunication; a storage device for storing a navigation map and awireless coverage map; and a system control unit connected to receiveinputs from each of said location device, said wireless communicationdevice, said measurement device and said storage device, said systemcontrol unit updating the wireless coverage map based on informationfrom said measurement device and determining whether reliablecommunications can be established with said wireless communicationdevice based on current location information from said location deviceand said street map as compared with an updated version of said wirelesscoverage map.
 2. The system of claim 1 further comprising a userinterface between the system control unit and a user, the user interfacepermitting a user to input commands to the system control unit andproviding output to the user from the system control unit.
 3. The systemof claim 2 further comprising a computer process installed on saidsystem control unit, said computer process called a user interfacemanager, the user interface manager having access to the navigation mapand the wireless coverage map and interacting with the user interfaceand the location device such that the user interface manager interpretsuser commands entered by a user from the user interface to execute theuser's commands and presents results and notification of events to theuser by the user interface.
 4. The system of claim 2 further comprisinga computer process installed on said system control unit, said computerprocess called a navigation manager, the navigation manager havingaccess to the navigation map and the wireless coverage map andinteracting with the user interface and the location device such thatthe navigation manager receives information from the location device andcomputes a route based on information in both the navigation map andwireless coverage map according to a user input.
 5. The system of claim2 further comprising a computer process installed on said system controlunit, said computer process called a coverage manager, the coveragemanager having access to the navigation map and the wireless coveragemap and interacting with the user interface, the location device, andthe measurement device such that the coverage manager initializes itselfby a current version of the wireless coverage map, monitors currentstatus of wireless coverage by interacting with the measurement device,predicts status of wireless coverage by looking at a route plan and thewireless coverage map, and notifies the user interface of events thatare important to maintaining a wireless connection, the coverage managerfurther updating the wireless coverage map by new measurements from themeasurement device and generating information about estimated time ordistance until a next event of communication loss or interruption andestimates time until regaining coverage.
 6. The system of claim 2further comprising a computer process installed on the system controlunit, said computer process called a connection manager, the connectionmanager having access to the wireless communication device and thewireless coverage map and interacting with the user interface such thatthe connection manager receives information from the user interface aswhen to make a connection and commands the wireless communication deviceto make a connection based on user input and information from thewireless coverage map.
 7. The system of claim 2 further comprising: afirst computer process installed on said system control unit, said firstcomputer process called a user interface manager, the user interfacemanager having access to the navigation map and the wireless coveragemap and interacting with the user interface and the location means suchthat the user interface manager interprets user commands entered by auser from the user interface to execute the user's commands and presentsresults and notification to the user by the user interface; a secondcomputer process installed on said system control unit, said secondcomputer process called a navigation manager, the navigation managerhaving access to the navigation map and the wireless coverage map andinteracting with the user interface manager and the location device suchthat the navigation manager receives information from the locationdevice and computes a route based on information in both the navigationmap and wireless coverage map according to a user input; a thirdcomputer process installed on said system control unit, said thirdcomputer process called a coverage manager, the coverage manager havingaccess to the navigation map and the wireless coverage map andinteracting with the user interface manager, the location device, andthe measurement device such that the coverage manager initializes itselfby a current version of the coverage map, monitors current status ofcoverage by interacting with the measurement device, predicts status ofcoverage by looking at the route plan generated by the navigationmanager and the wireless coverage map, and notifies the user interfacemanager of events that are important to maintaining wireless connection,the coverage manager further updating the wireless coverage map by newmeasurements from the measurement device and generates information aboutestimated time or distance until a next event of communication loss orinterruption and estimates time until regaining coverage; and a fourthcomputer process installed on the system control unit, said fourthcomputer process called a connection manager, the connection managerhaving access to the wireless communication device and the wirelesscoverage map and interacts with the user interface manager and thecoverage manager such that the connection manager receives informationfrom the user interface manager and the coverage manager as when to makea connection and commands the wireless communication device to make aconnection based on user input and information from the coveragemanager.
 8. The system of claim 1 in which the wireless overage map is apredetermined wireless coverage map.
 9. The system of claim 8 in whichthe system control unit updates the wireless coverage map by makingmeasurements as the vehicle moves.
 10. The system of claim 9 in whichthe system control unit updates a collective wireless coverage mapstored at a server.
 11. The system of claim 10 in which multiplevehicles update the collective wireless coverage map stored at theserver.
 12. The system of claim 11 in which the system control unitupdates the wireless coverage map in the storage device in the vehicleby obtaining data from the server derived from the collective wirelesscoverage map.
 13. The system of claim 1 in which the multiple wirelesscoverage maps are stored on the storage device, each of the wirelesscoverage maps being provided by different wireless service providers.14. The system of claim 1 in which the location device is a GPSreceiver.
 15. The system of claim 1 in which the location device is aradio triangulation system.
 16. The system of claim 15 in which theradio triangulation system is a LORAN-type system.